package com.gitee.cirnochat.common.config;

import com.gitee.cirnochat.chatai.model.dto.lke.TencentCloudLkeToken;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Objects;

@Configuration
@Data
@ConfigurationProperties(prefix = "tencentcloud.lke.token")
public class TencentCloudLkeTokenConfig {
    private String secretId;

    private String secretKey;

    private int connTypeApi; // API 访客

    private String appKey; // 机器人密钥，不是BotBizId (从运营接口人处获取)

    private String visitorBizId; // 访客 ID（外部系统提供，需确认不同的访客使用不同的 ID）

    private String region;

    private String version;

    @Bean
    public TencentCloudLkeToken tencentCloudToken() {
       return TencentCloudLkeToken.TencentCloudLkeTokenBuilder.builder()
                .setSecretId(secretId)
                .setSecretKey(secretKey)
                .setAppKey(appKey)
                .setConnTypeApi(connTypeApi)
                .setRegion(Objects.requireNonNullElse(region,"ap-guangzhou")) // 默认区域，可以根据需要修改)
                .setVersion(Objects.requireNonNullElse(version,"2023-11-30")) // 默认版本，可以根据需要修改
                .setVisitorBizId(visitorBizId).build();
    }

}
